#pragma once

#include "Component.h"

namespace game_engine { namespace components
{

/*!
 * \class CharacterController
 * \brief 
 */
class CharacterController : public Component
{
///////////////////////////////////////////////////////////////////////////////
// Attribute definition
///////////////////////////////////////////////////////////////////////////////
private:
    FLOAT32 speed;

///////////////////////////////////////////////////////////////////////////////
// Method definition
///////////////////////////////////////////////////////////////////////////////
public:
    // Constructors and Destructors
    CharacterController(void);
    CharacterController(GameObject *obj, const FLOAT32 spd);
    virtual ~CharacterController(void);

    // Others
    void update(const FLOAT32 time);

    // Getters
    const FLOAT32 getSpeed(void) const;

    // Setters
    void setSpeed(const FLOAT32 spd);

};

}}
